package lang

import "time"

const FormatYmd = "2006-01-02"
const FormatYmdHms = "2006-01-02 15:04:15"

// CreateModifyTime
// @Description: 	创建修改时间
type CreateModifyTime struct {
	//	创建时间
	CreateTime time.Time
	//	修改时间
	ModifyTime time.Time
}

// NewCreateModifyTime
//
//	@Description:	创建开始结束时间
//	@return *CreateModifyTime
func NewCreateModifyTime() *CreateModifyTime {
	return &CreateModifyTime{
		CreateTime: time.Now(),
		ModifyTime: time.Now(),
	}
}

// SetModifyTimeToNow
//
//	@Description: 	设定时间为当前时间
//	@receiver cm
func (cm *CreateModifyTime) SetModifyTimeToNow() {
	cm.ModifyTime = time.Now()
}

// FormatCreateTime
//
//	@Description: 格式化创建时间
//	@receiver cm
//	@return string
func (cm *CreateModifyTime) FormatCreateTime() string {
	return cm.CreateTime.Format(FormatYmdHms)
}

// FormatCreateTimeByFormat
//
//	@Description:	格式化CreateTime
//	@receiver cm
//	@param format
//	@return string
func (cm *CreateModifyTime) FormatCreateTimeByFormat(format string) string {
	return cm.CreateTime.Format(format)
}

// FormatModifyTime
//
//	@Description:  格式化修改时间
//	@receiver cm
//	@return string
func (cm *CreateModifyTime) FormatModifyTime() string {
	return cm.ModifyTime.Format(FormatYmdHms)
}

// FormatModifyTimeByFormat
//
//	@Description: 格式化修改时间
//	@receiver cm
//	@param format
//	@return string
func (cm *CreateModifyTime) FormatModifyTimeByFormat(format string) string {
	return cm.ModifyTime.Format(format)
}
